home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Special 25 / AMIGAplus Sonderheft 25 (2000)(Falke)(DE)(Track 1 of 4)[!].iso / Updates / HD-Installer / jst_dev / sources / src / loaders / JSTExeHD / AGA_2C_NFhd.asm < prev    next >
Assembly Source File  |  2000-04-12  |  2KB  |  99 lines

  1. ; *** OSEmu AGA nofast
  2. ; *** Written by Jean-François Fabre 1999
  3.  
  4.  
  5.     include    "syslibs.i"
  6.     include    "jst.i"
  7.  
  8.     HD_PARAMS    "",0,0
  9.  
  10. MEM_SIZE = $200000
  11.  
  12. loader:
  13.  
  14.     Mac_printf    "Generic 2Meg chip/no fast/AGA OSEmu HD Loader"
  15.     Mac_printf    "Coded by Jean-François Fabre © 1999"
  16.  
  17.     JSRGEN    CheckAGA
  18.     tst.l    D0
  19.     bne    AgaErr
  20.  
  21.     JSRABS    UseHarryOSEmu
  22.  
  23.     JSRGEN    GetUserData
  24.     tst.l    (A0)
  25.     beq    UDErr
  26.     move.l    A0,D0
  27.     lea    MAINFILE(pc),A0
  28.     move.l    A0,D1
  29.     JSRGEN    StrcpyAsm
  30.  
  31.     TESTFILE    MAINFILE
  32.     tst.l    d0
  33.     bne    FileErr
  34.  
  35.     JSRABS    LoadFiles
  36.  
  37.     moveq.l    #0,D0
  38.     move.l    #CACRF_CopyBack,D1
  39.     JSRABS    Degrade
  40.  
  41.     GO_SUPERVISOR
  42.     SAVE_OSDATA    MEM_SIZE,#$5D
  43.  
  44.     MOVE.L    $4.W,A6            ;OPEN DOSLIB FOR USE (THE EMU
  45. ;;    or.w    #AFF_68020,AttnFlags(A6)
  46.  
  47.     ; **** boot stuff and patch
  48.  
  49.     MOVE.L    $4.W,A6            ;OPEN DOSLIB FOR USE (THE EMU
  50.     MOVEQ.L    #0,D0            ;PROVIDES THE FUNCTIONS)
  51.     LEA    DOSNAM(PC),A1
  52.     JSRLIB    OpenLibrary(A6)
  53.     LEA.L    DOSP(PC),a4
  54.     MOVE.L    d0,(a4)
  55.     MOVE.L    D0,A6
  56.  
  57.     LEA.L    MAINFILE(PC),A0        ;LOAD MAIN GAME
  58.     MOVE.L    A0,D1
  59.     JSRLIB    LoadSeg
  60.                     ;NO NEED TO STORE POINTER FOR LATER USE
  61.     LSL.L    #2,D0
  62.     MOVE.L    D0,A1
  63.     ADDQ.L    #4,A1
  64.  
  65.     cmp.l    #0,A1
  66.     beq    LoadsegErr
  67.  
  68.     SUB.L    A0,A0
  69.     MOVEQ.L    #0,D0        ; no pointer on argumentline
  70.  
  71.     
  72.     jsr    (A1)
  73.  
  74. LoadsegErr
  75.     JSRGEN    InGameExit
  76. FileErr:
  77.     Mac_printf    "File ",f
  78.     lea    MAINFILE(pc),A1
  79.     JSRABS    Display
  80.     Mac_printf     " missing!"
  81.     JSRABS    CloseAll
  82.  
  83. UDErr:
  84.     Mac_printf    "** Executable program name must be passed in USERDATA"
  85.     JSRABS    CloseAll
  86.  
  87. AgaErr:
  88.     Mac_printf    "** You need a AGA computer to run this!"
  89.     JSRABS    CloseAll
  90.  
  91. DOSP:
  92.     dc.l    0
  93. DOSNAM:
  94.     dc.b    "dos.library",0
  95. MAINFILE:
  96.     blk.b    256,0
  97.  
  98.  
  99.